/*
 * Copyright (c) 2017.  . All rights reserved.
 */

package com.suozhang.framework.framework.api;

import com.suozhang.framework.entity.bo.*;

import io.reactivex.Observable;
import retrofit2.http.*;

/**
 * 公共Api接口
 *
 *
 * @date 2017/3/17 9:17
 */

public interface CommonApi {

    /**
     * 登录接口 返回值TokenInfo泛型指定为String 可变数据，自行解析
     *
     * @param loginRequest
     * @return
     */
    @POST("api/authorization/login")
    Observable<Result<UserInfoBo>> login(@Body LoginRequest<UserAccount> loginRequest);

    /**
     * 刷新Token接口 返回值TokenInfo泛型指定为String 可变数据，自行解析
     *
     * @param refreshToken
     * @return
     */
    @GET("api/authorization/refreshToken/{refreshToken}")
    Observable<Result<UserInfoBo>> refreshToken(@Path("refreshToken") String refreshToken);

    /**
     * 应用更新接口
     *
     * @param
     * @return
     */
    @GET("app/version")
    Observable<Result<AppUpdateInfo>> appUpdate(@Query("type") int type);

}
